home *** CD-ROM | disk | FTP | other *** search
/ Disc to the Future 2 / Disc to the Future Part II Programmer's Reference (Wayzata Technology)(6013)(1992).bin / MAC / THINKC / 4_0 / FADER / FADE_IN.C < prev    next >
Text File  |  1991-03-01  |  3KB  |  144 lines

  1. /* ===================================
  2.  
  3. File: Fade_In.c
  4. Function: Handle all operations for this window
  5. History: 3/1/91 Original by Prototyper.  
  6.  
  7. ================================= */
  8.  
  9. #include "Fade_In.h"
  10.  
  11.  
  12.     /* *********************************** */
  13.     /* These are the other includes for general routines */
  14.  
  15. #include "Strings.h"
  16.     extern char * strcpy(Str255 *, char *);
  17.  
  18.     /* *********************************** */
  19.  
  20. #define      TRUE   1
  21. #define      FALSE  0
  22. #define      NIL    0
  23.  
  24.     /* *********************************** */
  25.  
  26.  
  27.  
  28.  
  29. WindowPtr    MyWindow;
  30.     static Rect    tempRect,temp2Rect;
  31.     static short    Index;
  32.     static ControlHandle    CtrlHandle;
  33.     static Str255    sTemp;
  34.     static OSErr    MyErr;
  35.  
  36. /* ====================================== */
  37.  
  38. /* Initialize us so all our routines can be activated */
  39. void  Init_Fade_In()
  40. {
  41.     MyWindow = NIL;
  42. }
  43.  
  44. /* ================================= */
  45.  
  46. /* Close our window */
  47. void  Close_Fade_In(whichWindow,theInput)
  48. WindowPtr  whichWindow;
  49. TEHandle *theInput;
  50. {
  51.      
  52.     if ((MyWindow != NIL) && ((MyWindow == whichWindow) || (whichWindow == (WindowPtr)-1)))
  53.     {
  54.         DisposeWindow(MyWindow); 
  55.         MyWindow = NIL; 
  56.     } 
  57.  
  58. /* ================================= */
  59.  
  60. /* ====================================== */
  61.  
  62. /* Update our window, someone uncovered a part of us */
  63. void  UpDate_Fade_In(whichWindow)
  64. WindowPtr  whichWindow;
  65. {
  66.     WindowPtr   SavePort;
  67.     
  68.     if ((MyWindow != NIL)  &&  (MyWindow == whichWindow))
  69.     {
  70.         GetPort(&SavePort);
  71.         SetPort(MyWindow);
  72.         DrawControls(MyWindow);
  73.         UpdatePict();
  74.         SetPort(SavePort);
  75.     }
  76. }
  77.  
  78. /* ================================= */
  79.  
  80. /* Open our window and draw everything */
  81. void Open_Fade_In(theInput)
  82.     TEHandle    *theInput;
  83. {
  84.     short    Index;
  85.     Rect    dataBounds;
  86.     Point    cSize;
  87.  
  88.     if (MyWindow == NIL) 
  89.     {
  90.         MyWindow = GetNewWindow(1,NIL, (WindowPtr)-1);
  91.         SetPort(MyWindow);
  92.         
  93.         ShowWindow(MyWindow);
  94.         SelectWindow(MyWindow);
  95.         InitPicts();
  96.     }
  97.     else
  98.         SelectWindow(MyWindow);
  99.     
  100. }
  101.  
  102. /* ================================= */
  103.  
  104. /* Handle action to our window, like controls */
  105. void  Do_Fade_In(myEvent, theInput)
  106. EventRecord    *myEvent;
  107. TEHandle    *theInput;
  108. {
  109.     short    RefCon;
  110.     short    code;
  111.     short    theValue;
  112.     WindowPtr    whichWindow;
  113.     Point    myPt;
  114.     ControlHandle    theControl;
  115.  
  116. /* Start of Window handler */
  117. if (MyWindow != NIL)
  118. {
  119.     code = FindWindow(myEvent->where, &whichWindow);
  120.     
  121.     if ((myEvent->what == mouseDown)  &&  (MyWindow == whichWindow))
  122.     {
  123.         myPt = myEvent->where;
  124.         GlobalToLocal(&myPt);
  125.          
  126.      }
  127.      
  128.     if ((MyWindow == whichWindow) &&  (code == inContent))
  129.     {
  130.         
  131.         code = FindControl(myPt, whichWindow, &theControl);
  132.         
  133.         if (code != 0) 
  134.             code = TrackControl(theControl,myPt, NIL);
  135.         
  136.     }
  137. }
  138. }
  139.  
  140. /* ================================= */
  141.  
  142.  
  143.